package pe.edu.upc.poo;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

public class AdmCartaFianza {
	private ArrayList<CartaFianza> cartas;

	public AdmCartaFianza() {
		cartas = new ArrayList<CartaFianza>();

	}

	public CartaFianza buscarCartaFianza(String numCarta) {
		for (CartaFianza carta : cartas)
			if (carta.getCfNumCartaFinaza().equals(numCarta))
				return carta;
		return null;
	}


	public boolean noExisteCartaFianza(String numCarta) {
		return buscarCartaFianza(numCarta) == null;
	}

	public void eliminarCartaFianza(String numCarta) {
		CartaFianza carta = buscarCartaFianza(numCarta);
		if (carta != null)
			cartas.remove(carta);
	}

	public int getTotalCartaFianza() {
		return cartas.size();
	}

	public Date getDate(String date) {
		DateFormat df = new SimpleDateFormat("dd/MM/yyyy");

		try {

			return df.parse(date);

		} catch (ParseException ex) {
		}

		return null;
	}

	public void registrarCartaFianza(String numCartaFinaza, String numContrato,
			String bancoEmisor, String tipo, String proveedor,
			String numProcSelec, long importe, Date fechaProc,
			String responsable, String comentario, String usuarioCreado,
			Date fechaCreacion, String usuarioModifica, Date fechaModificacion,
			String estado) {
		if (noExisteCartaFianza(numCartaFinaza)) {
			CartaFianza carta = new CartaFianza(numCartaFinaza, numContrato,
					bancoEmisor, tipo, proveedor, numProcSelec, importe,
					fechaProc, responsable, comentario, usuarioCreado,
					fechaCreacion, usuarioModifica, fechaModificacion, estado);
			cartas.add(carta);
		}

	}

}
